<template>
  <view>
	  <button @click="startTracking">获取当前位置</button>
    <map 
      id="map" 
      :longitude="currentLongitude" 
      :latitude="currentLatitude" 
      :scale="15" 
      :show-location="showLocation" 
      style="width: 100%; height: 400px;">
      <marker :longitude="currentLongitude" :latitude="currentLatitude"></marker>
	  
    </map>
  </view>
</template>

<script>
export default {
  data() {
    return {
		showLocation:true,
      currentLongitude: 116.4,
      currentLatitude: 29.0,
      intervalId: null,
    };
  },
 //  onLoad() {
 //    console.log('onLoad')
	// this.startTracking();
 //  },
  mounted(){
	  console.log('mouted>>>>')
	  
  },
  methods: {
    startTracking() {
      // this.intervalId = setInterval(() => {
        this.updateLocation();
      // }, 1000); // 每秒更新一次位置
    },
    updateLocation() {
		console.log('updateLocation', uni.getLocation)
		uni.getLocation({
		  type: 'gcj02', // 设置为国测局坐标，可更精确地在国内使用
		  success: (res) => {
			  console.log(res)
			this.longitude = res.longitude;
			this.latitude = res.latitude;
			// 你可以在这里执行其他操作，比如将位置信息显示在页面上
		  },
		  fail: (error) => {
			// 处理定位失败的情况
			console.error('定位失败', error);
		  },
		});
   //    const mockLocation = this.getMockLocation();
	  // console.log('mockLocation',mockLocation)
   //    this.currentLongitude = mockLocation.longitude;
   //    this.currentLatitude = mockLocation.latitude;
    },
    getMockLocation() {
      // 返回一个模拟的位置对象
      // 在实际应用中，你应该从高德地图API或其他定位服务获取真实位置
      return {
        longitude: Math.random() * 360 - 180,
        latitude: Math.random() * 180 - 90,
      };
    },
    onUnload() {
      // 页面卸载时清除定时器
      clearInterval(this.intervalId);
    },
  },
};
</script>

<style>
/* 添加你的样式 */
</style>
